Ktor Read Key Value Repo Client
class KtorReadKeyValueRepoClient<Key, Value>(baseUrl: String, httpClient: <Error class: unknown class>, contentType: <Error class: unknown class>, objectType: <Error class: unknown class>, paginationResultObjectsTypeInfo: <Error class: unknown class>, paginationResultIdsTypeInfo: <Error class: unknown class>, idSerializer: suspend (Key) -> String, valueSerializer: suspend (Value) -> String) : ReadKeyValueRepo<Key, Value>
Constructors
Link copied to clipboard
fun <Key, Value> KtorReadKeyValueRepoClient(baseUrl: String, httpClient: <Error class: unknown class>, contentType: <Error class: unknown class>, objectType: <Error class: unknown class>, paginationResultObjectsTypeInfo: <Error class: unknown class>, paginationResultIdsTypeInfo: <Error class: unknown class>, idSerializer: suspend (Key) -> String, valueSerializer: suspend (Value) -> String)
Functions
Link copied to clipboard
open suspend override fun keys(v: Value, pagination: Pagination, reversed: Boolean): PaginationResult<Key>
This method should use sorted by Keys search and take the PaginationResult. By default, it should use ascending sort for Keys
Link copied to clipboard
open suspend override fun values(pagination: Pagination, reversed: Boolean): PaginationResult<Value>
This method should use sorted by Keys search and take the PaginationResult. By default, it should use ascending sort for Keys
Extensions
cached
Link copied to clipboard
fun <Key, Value> ReadKeyValueRepo<Key, Value>.cached(kvCache: KVCache<Key, Value>): ReadKeyValueCacheRepo<Key, Value>
fun <Key, Value> ReadKeyValueRepo<Key, Value>.cached(kvCache: FullKVCache<Key, Value>): FullReadKeyValueCacheRepo<Key, Value>
fun <Key, Value> ReadKeyValueRepo<Key, Value>.cached(kvCache: KVCache<Key, Value>): ReadKeyValueCacheRepo<Key, Value>
fun <Key, Value> ReadKeyValueRepo<Key, Value>.cached(kvCache: FullKVCache<Key, Value>): FullReadKeyValueCacheRepo<Key, Value>
fun <Key, Value> ReadKeyValueRepo<Key, Value>.cached(kvCache: KVCache<Key, Value>): ReadKeyValueCacheRepo<Key, Value>
fun <Key, Value> ReadKeyValueRepo<Key, Value>.cached(kvCache: FullKVCache<Key, Value>): FullReadKeyValueCacheRepo<Key, Value>
with Mapper
Link copied to clipboard
inline fun <FromKey, FromValue, ToKey, ToValue> ReadKeyValueRepo<ToKey, ToValue>.withMapper(mapper: MapperRepo<FromKey, FromValue, ToKey, ToValue>): ReadKeyValueRepo<FromKey, FromValue>
inline fun <FromKey, FromValue, ToKey, ToValue> ReadKeyValueRepo<ToKey, ToValue>.withMapper(noinline keyFromToTo: suspend FromKey.() -> ToKey = { this as ToKey }, noinline valueFromToTo: suspend FromValue.() -> ToValue = { this as ToValue }, noinline keyToToFrom: suspend ToKey.() -> FromKey = { this as FromKey }, noinline valueToToFrom: suspend ToValue.() -> FromValue = { this as FromValue }): ReadKeyValueRepo<FromKey, FromValue>
inline fun <FromKey, FromValue, ToKey, ToValue> ReadKeyValueRepo<ToKey, ToValue>.withMapper(mapper: MapperRepo<FromKey, FromValue, ToKey, ToValue>): ReadKeyValueRepo<FromKey, FromValue>
inline fun <FromKey, FromValue, ToKey, ToValue> ReadKeyValueRepo<ToKey, ToValue>.withMapper(noinline keyFromToTo: suspend FromKey.() -> ToKey = { this as ToKey }, noinline valueFromToTo: suspend FromValue.() -> ToValue = { this as ToValue }, noinline keyToToFrom: suspend ToKey.() -> FromKey = { this as FromKey }, noinline valueToToFrom: suspend ToValue.() -> FromValue = { this as FromValue }): ReadKeyValueRepo<FromKey, FromValue>
inline fun <FromKey, FromValue, ToKey, ToValue> ReadKeyValueRepo<ToKey, ToValue>.withMapper(mapper: MapperRepo<FromKey, FromValue, ToKey, ToValue>): ReadKeyValueRepo<FromKey, FromValue>
inline fun <FromKey, FromValue, ToKey, ToValue> ReadKeyValueRepo<ToKey, ToValue>.withMapper(noinline keyFromToTo: suspend FromKey.() -> ToKey = { this as ToKey }, noinline valueFromToTo: suspend FromValue.() -> ToValue = { this as ToValue }, noinline keyToToFrom: suspend ToKey.() -> FromKey = { this as FromKey }, noinline valueToToFrom: suspend ToValue.() -> FromValue = { this as FromValue }): ReadKeyValueRepo<FromKey, FromValue>